using System;
using System.Collections.Generic;
using CosyTrade.Organization;
using NHibernate.Expression;

namespace CosyTrade
{
    public interface IOrganizationSystem
    {
        void UpdateCompany(Company company);
        Company GetCompanyDetail(Guid companyKey);
        IList<Company> GetCompanyList();
        IList<Employee> GetEmployeeList(Guid companyKey);
        IList<Employee> GetEmployeeList(ICriterion criterion);

        void CreateEmployee(Employee employee);
        void UpdateEmployee(Employee employee);
        void DeleteEmployee(Guid employeeKey);
        Employee GetEmployeeDetail(Guid empKey);
    }
}